草庐IT

Java SoftReference 保证失败

全部标签

java - 有没有办法让 Guice 在 Guice.createInjector 期间快速失败

我的项目正在使用Guice作为负责为大型对象图(主要是单例)提供依赖项(服务类)的IOC容器。有时,如果在构造过程中依赖项失败,并且许多对象都需要此依赖项,则失败将一遍又一遍地发生,并将异常添加到GuiceProvisionException中。我能理解这种行为的合理性,因为它列出了所有发生的错误,以节省修复问题的时间。但是,我想禁用此功能和“快速失败”,因为在这种情况下反复失败是资源密集型的。此外,“ProvisionException”包含相同异常的列表。我很欣赏这种行为是实现中不良实践(即资源密集型对象创建)的症状(气味),但由于依赖项是抽象的,任何人都可以使用依赖项注入(inj

java - Hibernate Envers 因 @Converter 和 AttributeConverter (JPA 2.1) 而失败

我在Envers和MySql5.6中使用Hibernate4.3.4。如果没有JPA2.1转换器,下面的Party实体将在Configuration.buildSessionFactory()处失败,因为Hibernate不知道如何处理名称类:@Entity@AuditedpublicclassParty{protectedNamename;...}异常(exception)情况是:org.hibernate.MappingException:Couldnotdeterminetypefor:ModuloADM.Party.Name,attable:Party,forcolumns:[

java - M2E 加载所有依赖失败

我正在使用SpringToolSuite3.6.3和M2Eeclipse插件1.4.1,当我从其中一个项目打开POM文件时,我发现并不是所有的依赖项都被添加,我已经为jaxws添加了depnedecy配置-rt版本2.2.8有很多依赖如下javax.xml.bindjaxb-apijavax.xml.wsjaxws-apijavax.xml.soapjavax.xml.soap-apijavax.annotationjavax.annotation-apijavax.jwsjsr181-apicom.sun.xml.bindjaxb-corecom.sun.xml.bindjaxb-i

java - 保证在HashSet中均匀分布散列,它是如何工作的?

这个问题在这里已经有了答案:WhydoesaHashMaprehashthehashcodesuppliedbythekeyobject?(4个答案)关闭7年前。这是IntrotoJavaProgramming(Liang)中的一个示例:importjava.util.LinkedList;publicclassMyHashSetimplementsMySet{//Definethedefaulthashtablesize.Mustbeapowerof2privatestaticintDEFAULT_INITIAL_CAPACITY=16;//Definethemaximumhasht

当导入的类扩展第 3 方库时,Java 导入静态失败

问题设置由三个java库组成(为了便于阅读,我删除了所有包名称,到处都使用完全限定名称):external-lib:提供抽象类publicabstractclassAbstractExternal{}my-lib-A:提供类publicclassClassAextendsAbstractExternal{publicstaticfinalStringFOO="foo";}external-lib在my-lib-A的类路径中。my-lib-B从ClassA静态导入FOO:importstaticClassA.FOO;publicclassClassB{privateStringfoo=F

java 10 httpclient 孵化器 GET 请求在 node.js 服务器上失败

我一直在Java9/10孵化器中试验HttpClient的东西,并有以下简单的代码(实际上是从项目主页偷来的!):URIuri=URI.create("http://192.168.1.102:8080/");HttpRequestgetRequest=HttpRequest.newBuilder().uri(uri).GET().build();HttpResponseresponse=client.send(getRequest,HttpResponse.BodyHandler.asString());System.out.println("responsetoget:"+resp

java - 如果我在 jsr 303 中使用两个自定义注释,如果第一个验证失败,如何停止对第二个注释的验证?

我在使用jsr303时遇到下一个问题:我用下一种方式注释了字段:@NotEmpty(message="Pleasespecifyyourpostcode")@PostCode(message="Yourpostcodeisincorrect")privateStringpostCode;但只有当字段通过了@NotEmpty的验证时,我才需要检查@PostCode。我如何检查这两个注释?提前致谢 最佳答案 您可以使用验证组来按组执行验证。详见3.4节。JSR-303中的组和组序.在您的示例中,您会执行以下操作:@NotEmpty(me

java - RabbitMQ - Apache Camel Reading Messages 如何处理失败的消息

我有以下PHP应用程序。将用户注册发布到消息队列。Java应用程序从该队列中读取并导入它。希望下图能够描述它。我只处理Java方面的事情。json消息已经存在于队列中。路由(Java消费端)。@ComponentpublicclassSignUpRouting{errorHandler(deadLetterChannel("rabbitmq://signUpDeadLetter.exchange?username=etc..").useOriginalMessage());from("rabbitmq://phpSignUp.exchange?username=etc....").ro

java - 如果编译器警告的数量增加,我如何在 Jenkins 中构建失败?

在TeamCity中,我可以添加一个构建失败条件,如果编译器/检查警告的数量比之前的成功构建增加,则构建失败https://confluence.jetbrains.com/display/TCD9/Build+Failure+Conditions#BuildFailureConditions-Failbuildonmetricchange我如何在Jenkins中做同样的事情? 最佳答案 WarningsPlug-in应该做你想做的。它会根据警告的数量或可选的特定优先级的新警告将构建标记为不稳定或失败。如果如图所示将“所有优先级”设

java - 静态初始化的 unmodifiableCollection.get 是否保证不可变?

静态初始化的unmodifiableCollection.get是否保证不可变?对于:静态最终mapFOO=Collections.unmodifiableMap(newHashMap());多线程使用get方法能不出问题吗?即使无法添加/删除FOO中的项目,是什么阻止了get方法出于缓存目的操纵FOO的内部状态等。如果以任何方式修改内部状态,则FOO不能同时使用。如果是这样,java中真正的不可变集合在哪里? 最佳答案 给出具体的例子:staticfinalMapFOO=Collections.unmodifiableMap(ne